package com.medisched.medisched.domain;

import com.fasterxml.jackson.annotation.JsonFormat;

import java.util.Date;

/**
 * 请假记录对象 leaveapplication
 * 
 * @author ruoyi
 * @date 2025-05-15
 */
public class Leaveapplication 
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private Long id;

    /** 用户ID */
    private Long userId;

    /** 请假开始时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date startDate;

    /** 请假结束时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date endDate;

    /** 请假原因 */
    private String reason;

    /** 状态：0待审批，1已通过，2已拒绝 */
    private Long status;

    private Date createTime;

    public Leaveapplication() {
    }

    public Leaveapplication(long serialVersionUID, Long id, Long userId, Date startDate, Date endDate, String reason, Long status, Date createTime) {
        this.id = id;
        this.userId = userId;
        this.startDate = startDate;
        this.endDate = endDate;
        this.reason = reason;
        this.status = status;
        this.createTime = createTime;
    }

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }

    public void setUserId(Long userId) 
    {
        this.userId = userId;
    }

    public Long getUserId() 
    {
        return userId;
    }

    public void setStartDate(Date startDate) 
    {
        this.startDate = startDate;
    }

    public Date getStartDate() 
    {
        return startDate;
    }

    public void setEndDate(Date endDate) 
    {
        this.endDate = endDate;
    }

    public Date getEndDate() 
    {
        return endDate;
    }

    public void setReason(String reason) 
    {
        this.reason = reason;
    }

    public String getReason() 
    {
        return reason;
    }

    public void setStatus(Long status) 
    {
        this.status = status;
    }

    public Long getStatus() 
    {
        return status;
    }


    /**
     * 获取
     * @return createTime
     */
    public Date getCreateTime() {
        return createTime;
    }

    /**
     * 设置
     * @param createTime
     */
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public String toString() {
        return "Leaveapplication{serialVersionUID = " + serialVersionUID + ", id = " + id + ", userId = " + userId + ", startDate = " + startDate + ", endDate = " + endDate + ", reason = " + reason + ", status = " + status + ", createTime = " + createTime + "}";
    }
}
